Software clients operating on or in conjunction with a computer system are often used to access data stored at a server with which the computer system can establish communications, such as through a local area on the server is accessible only through a particular protocol, which in turn tends to limit a user to a particular client. Similarly, a particular type of client is typically configurable to operate with only certain types of servers or protocols.
In an e-mail system, for example, in which users have associated mailboxes on a mail server, a particular protocol and often a particular messaging client is required for e-mail access. There is no single standard method for accessing e-mail stored on a server. Instead, there are several incompatible protocols defined by various vendors and standards bodies. In addition, the explosion of the Internet has resulted in several key problems. First, in order to obtain control over their user base, several Internet-based e-mail providers have extended standard protocols with their own proprietary extensions. Other vendors have gone away from RFC-based protocols and have defined new protocols from the ground up.
Moreover, many vendors have chosen to implement standard protocols such as Internet Message Access Protocol (IMAP) and Post Office Protocol (POP), but have interpreted the rules of these protocols differently. Because of this proliferation of access mechanisms, there is no single way to access all of these mail stores. Applications that need to access these mail stores quickly become overly complicated when attempting to account for all of the different protocols and implementations of the protocols.
Various prior art approaches have been developed for providing communications between systems and devices using different operating protocols. One such approach is set forth in U.S. Pat. No. 6,615,212 to Dutta et al., in which a transcoding proxy server receives a request for content from a client machine. The transcoding proxy server retrieves the content from an originating server. The retrieved content is provided in a first format type. In response to a determination that an increase in efficiency would be obtained by allowing the client to process the content in the first format type prior to transcoding the content into a second format type, the transcoding proxy server sends the content to the client in the first format type.
Furthermore, in response to a determination that the client does not have content processing software for processing the content in the first format, the transcoding proxy server sends content processing software for the first format type along with the content in the first format type to the client. The transcoding proxy server then transcodes the content from the first format type into the second format type and sends the content in the second format to the client.
Despite such prior art approaches, further protocol translation and/or conversion functionality may be desirable in certain applications.